//对于axios模块进行二次封装!!!
//需要引入axios
import axios from "axios";

//进度条的业务
import nprogress from 'nprogress';
//使用进度条的时候，需要把人家的样式引入！！
import "nprogress/nprogress.css";

//请求拦截器:当你请求的时候触发(服务器没有做出响应)!
axios.interceptors.request.use((config) => {
    //请求拦截器
    //config配置对象,身上有一个很重要东西,请求头****
    console.log('捕获到发请求');
    //进度条开始动
    nprogress.start();
    return config;
});

//响应拦截器:当服务器数据响应成功触发！
axios.interceptors.response.use((res) => {
    //响应成功
    console.log('捕获到请求成功');
    nprogress.done();
    //一般咱们会简化服务器返回的数据【因为服务器返回的数据一般需要的data:右侧数据】
    return res.data;
}, () => {
    //响应失败
    //终止Promise链
    return new Promise();
});


//对外暴露axios
export default axios;



